<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Support function</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Support_function"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Support_function rootpage-Support_function skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Support function</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Not to be confused with <a href="Support_curve" class="mw-redirect" title="Support curve">Support curve</a>.</div>
<p>In <a href="Mathematics" title="Mathematics">mathematics</a>, the <b>support function</b> <i>h</i><sub><i>A</i></sub> of a non-empty <a href="Closed_set" title="Closed set">closed</a> <a href="Convex_set" title="Convex set">convex set</a> <i>A</i> in <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c510b63578322050121fe966f2e5770bea43308d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.897ex; height:2.343ex;" alt="{\displaystyle \mathbb {R} ^{n}}" loading="lazy"></span>
describes the (signed) distances of <a href="Supporting_hyperplane" title="Supporting hyperplane">supporting hyperplanes</a> of <i>A</i> from the origin. The support function is a <a href="Convex_function" title="Convex function">convex function</a> on <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c510b63578322050121fe966f2e5770bea43308d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.897ex; height:2.343ex;" alt="{\displaystyle \mathbb {R} ^{n}}" loading="lazy"></span>.
Any non-empty closed convex set <i>A</i> is uniquely determined by <i>h</i><sub><i>A</i></sub>. Furthermore, the support function, as a function of the set <i>A</i>, is compatible with many natural geometric operations, like scaling, translation, rotation and <a href="Minkowski_addition" title="Minkowski addition">Minkowski addition</a>.
Due to these properties, the support function is one of the most central basic concepts in convex geometry.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Definition">Definition</h2></div>
<p>The support function <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}\colon \mathbb {R} ^{n}\to \mathbb {R} }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo>:<!-- : --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo stretchy="false">→<!-- → --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}\colon \mathbb {R} ^{n}\to \mathbb {R} }</annotation>
</semantics>
</math></span><img src="./e30797050b128f9b3a339fc1be37bbbf8d775383.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:12.026ex; height:2.676ex;" alt="{\displaystyle h_{A}\colon \mathbb {R} ^{n}\to \mathbb {R} }" loading="lazy"></span>
of a non-empty closed convex set <i>A</i> in <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c510b63578322050121fe966f2e5770bea43308d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.897ex; height:2.343ex;" alt="{\displaystyle \mathbb {R} ^{n}}" loading="lazy"></span> is given by
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}(x)=\sup\{x\cdot a:a\in A\},}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo movablelimits="true" form="prefix">sup</mo>
<mo fence="false" stretchy="false">{</mo>
<mi>x</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>a</mi>
<mo>:</mo>
<mi>a</mi>
<mo>∈<!-- ∈ --></mo>
<mi>A</mi>
<mo fence="false" stretchy="false">}</mo>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}(x)=\sup\{x\cdot a:a\in A\},}</annotation>
</semantics>
</math></span><img src="./2a8915c2945590bdb1f71d45832f45d724a23242.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:27.504ex; height:2.843ex;" alt="{\displaystyle h_{A}(x)=\sup\{x\cdot a:a\in A\},}" loading="lazy"></span></dd></dl>
<p><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle x\in \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle x\in \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c520ee2cb6ccf8a93c89a8c58a8378796bd52e53.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:7.067ex; height:2.343ex;" alt="{\displaystyle x\in \mathbb {R} ^{n}}" loading="lazy"></span>; see
<sup id="cite_ref-bonnesen_1-0" class="reference"><a href="#cite_note-bonnesen-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
<sup id="cite_ref-gardner_2-0" class="reference"><a href="#cite_note-gardner-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
.<sup id="cite_ref-schneider_3-0" class="reference"><a href="#cite_note-schneider-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Its interpretation is most intuitive when <i>x</i> is a unit vector:
by definition, <i>A</i> is contained in the closed half space
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \{y\in \mathbb {R} ^{n}:y\cdot x\leqslant h_{A}(x)\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo fence="false" stretchy="false">{</mo>
<mi>y</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>:</mo>
<mi>y</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>x</mi>
<mo>⩽<!-- ⩽ --></mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \{y\in \mathbb {R} ^{n}:y\cdot x\leqslant h_{A}(x)\}}</annotation>
</semantics>
</math></span><img src="./8ec1cb61282b7b52082fd99ac3f55e04da23c3d6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:24.36ex; height:2.843ex;" alt="{\displaystyle \{y\in \mathbb {R} ^{n}:y\cdot x\leqslant h_{A}(x)\}}" loading="lazy"></span></dd></dl>
<p>and there is at least one point of <i>A</i> in the boundary
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle H(x)=\{y\in \mathbb {R} ^{n}:y\cdot x=h_{A}(x)\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>H</mi>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo fence="false" stretchy="false">{</mo>
<mi>y</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>:</mo>
<mi>y</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>x</mi>
<mo>=</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle H(x)=\{y\in \mathbb {R} ^{n}:y\cdot x=h_{A}(x)\}}</annotation>
</semantics>
</math></span><img src="./cdfe88fe7052f5692259bbef6d991620c52af48f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:32.661ex; height:2.843ex;" alt="{\displaystyle H(x)=\{y\in \mathbb {R} ^{n}:y\cdot x=h_{A}(x)\}}" loading="lazy"></span></dd></dl>
<p>of this half space. The hyperplane <i>H</i>(<i>x</i>) is therefore called a <i>supporting hyperplane</i>
with <i>exterior</i> (or <i>outer</i>) unit normal vector <i>x</i>.
The word <i>exterior</i> is important here, as
the orientation of <i>x</i> plays a role, the set <i>H</i>(<i>x</i>) is in general different from <i>H</i>(−<i>x</i>).
Now <i>h</i><sub><i>A</i></sub>(<i>x</i>) is the (signed) distance of <i>H</i>(<i>x</i>) from the origin.
</p>
<div class="mw-heading mw-heading2"><h2 id="Examples">Examples</h2></div>
<p>The support function of a singleton <i>A</i> = {<i>a</i>} is <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}(x)=x\cdot a}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>x</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>a</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}(x)=x\cdot a}</annotation>
</semantics>
</math></span><img src="./eb8a30ca554c5c02b1884b489ab43e37ea75fe62.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.28ex; height:2.843ex;" alt="{\displaystyle h_{A}(x)=x\cdot a}" loading="lazy"></span>.
</p><p>The support function of the Euclidean unit ball <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle B=\{y\in \mathbb {R} ^{n}\,:\,\|y\|_{2}\leq 1\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>B</mi>
<mo>=</mo>
<mo fence="false" stretchy="false">{</mo>
<mi>y</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mspace width="thinmathspace"></mspace>
<mo>:</mo>
<mspace width="thinmathspace"></mspace>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mi>y</mi>
<msub>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>≤<!-- ≤ --></mo>
<mn>1</mn>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle B=\{y\in \mathbb {R} ^{n}\,:\,\|y\|_{2}\leq 1\}}</annotation>
</semantics>
</math></span><img src="./ac9a728d809bf31cf09a079a92bb1be39b69679d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:25.587ex; height:2.843ex;" alt="{\displaystyle B=\{y\in \mathbb {R} ^{n}\,:\,\|y\|_{2}\leq 1\}}" loading="lazy"></span> is <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{B}(x)=\|x\|_{2}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>B</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mi>x</mi>
<msub>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{B}(x)=\|x\|_{2}}</annotation>
</semantics>
</math></span><img src="./9054dd8943e6ad277bd1ad3402cd6612952ef158.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.765ex; height:2.843ex;" alt="{\displaystyle h_{B}(x)=\|x\|_{2}}" loading="lazy"></span> where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \|\cdot \|_{2}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mo>⋅<!-- ⋅ --></mo>
<msub>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \|\cdot \|_{2}}</annotation>
</semantics>
</math></span><img src="./b3a8e44a2eb980f856968a6357e3d0a7c22c905f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:5.058ex; height:2.843ex;" alt="{\displaystyle \|\cdot \|_{2}}" loading="lazy"></span> is the 2-norm.
</p><p>If <i>A</i> is a line segment through the origin with endpoints −<i>a</i> and <i>a</i>, then <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}(x)=|x\cdot a|}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
<mi>x</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>a</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo stretchy="false">|</mo>
</mrow>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}(x)=|x\cdot a|}</annotation>
</semantics>
</math></span><img src="./ff4ac9e3918ed51b7a2795bc114485880733caff.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:14.574ex; height:2.843ex;" alt="{\displaystyle h_{A}(x)=|x\cdot a|}" loading="lazy"></span>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Properties">Properties</h2></div>
<div class="mw-heading mw-heading3"><h3 id="As_a_function_of_x">As a function of <i>x</i></h3></div>
<p>The support function of a <i>compact</i> nonempty convex set is real valued and continuous, but if the
set is closed and unbounded, its support function is extended real valued (it takes the value
<span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \infty }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \infty }</annotation>
</semantics>
</math></span><img src="./c26c105004f30c27aa7c2a9c601550a4183b1f21.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.324ex; height:1.676ex;" alt="{\displaystyle \infty }" loading="lazy"></span>). As any nonempty closed convex set is the intersection of
its supporting half spaces, the function <i>h</i><sub><i>A</i></sub> determines <i>A</i> uniquely.
This can be used to describe certain geometric properties of convex sets analytically.
For instance, a set <i>A</i> is point symmetric with respect to the origin if and only if <i>h</i><sub><i>A</i></sub>
is an <a href="Even_function" class="mw-redirect" title="Even function">even function</a>.
</p><p>In general, the support function is not differentiable.
However, directional derivatives exist and yield support functions of support sets. If <i>A</i> is <i>compact</i> and convex,
and <i>h</i><sub><i>A</i></sub>'(<i>u</i>;<i>x</i>) denotes the directional derivative of
<i>h</i><sub><i>A</i></sub> at <i>u</i> ≠ <i>0</i> in direction <i>x</i>,
we have
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}'(u;x)=h_{A\cap H(u)}(x)\qquad x\in \mathbb {R} ^{n}.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msubsup>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
<mo>′</mo>
</msubsup>
<mo stretchy="false">(</mo>
<mi>u</mi>
<mo>;</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
<mo>∩<!-- ∩ --></mo>
<mi>H</mi>
<mo stretchy="false">(</mo>
<mi>u</mi>
<mo stretchy="false">)</mo>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mspace width="2em"></mspace>
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}'(u;x)=h_{A\cap H(u)}(x)\qquad x\in \mathbb {R} ^{n}.}</annotation>
</semantics>
</math></span><img src="./602f5f4a3363b32f40293a77abc3e77bb4b4174f.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -1.171ex; width:34.482ex; height:3.176ex;" alt="{\displaystyle h_{A}'(u;x)=h_{A\cap H(u)}(x)\qquad x\in \mathbb {R} ^{n}.}" loading="lazy"></span></dd></dl>
<p>Here <i>H</i>(<i>u</i>) is the supporting hyperplane of <i>A</i> with exterior normal vector <i>u</i>, defined
above. If <i>A</i> ∩ <i>H</i>(<i>u</i>) is a singleton {<i>y</i>}, say, it follows that the support function is differentiable at
<i>u</i> and its gradient coincides with <i>y</i>. Conversely, if <i>h</i><sub><i>A</i></sub> is differentiable at <i>u</i>, then <i>A</i> ∩ <i>H</i>(<i>u</i>) is a singleton. Hence <i>h</i><sub><i>A</i></sub> is differentiable at all points <i>u</i> ≠ <i>0</i>
if and only if <i>A</i> is <i>strictly convex</i> (the boundary of <i>A</i> does not contain any line segments).
</p><p>More generally, when <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A}</annotation>
</semantics>
</math></span><img src="./7daff47fa58cdfd29dc333def748ff5fa4c923e3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.743ex; height:2.176ex;" alt="{\displaystyle A}" loading="lazy"></span> is convex and closed then for any <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle u\in \mathbb {R} ^{n}\setminus \{0\}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>u</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo class="MJX-variant">∖<!-- ∖ --></mo>
<mo fence="false" stretchy="false">{</mo>
<mn>0</mn>
<mo fence="false" stretchy="false">}</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle u\in \mathbb {R} ^{n}\setminus \{0\}}</annotation>
</semantics>
</math></span><img src="./cf502619eef1813d7c53f66cb7670fd9d5fd46dd.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:12.749ex; height:2.843ex;" alt="{\displaystyle u\in \mathbb {R} ^{n}\setminus \{0\}}" loading="lazy"></span>,
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \partial h_{A}(u)=H(u)\cap A\,,}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi mathvariant="normal">∂<!-- ∂ --></mi>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>u</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>H</mi>
<mo stretchy="false">(</mo>
<mi>u</mi>
<mo stretchy="false">)</mo>
<mo>∩<!-- ∩ --></mo>
<mi>A</mi>
<mspace width="thinmathspace"></mspace>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \partial h_{A}(u)=H(u)\cap A\,,}</annotation>
</semantics>
</math></span><img src="./4f80f7322369812a199ae7adf469810fdf6bec95.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:20.922ex; height:2.843ex;" alt="{\displaystyle \partial h_{A}(u)=H(u)\cap A\,,}" loading="lazy"></span></dd></dl>
<p>where <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \partial h_{A}(u)}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi mathvariant="normal">∂<!-- ∂ --></mi>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>u</mi>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \partial h_{A}(u)}</annotation>
</semantics>
</math></span><img src="./3f613ab7161e6aab1cddee287fe0387ae91c7ac3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:7.261ex; height:2.843ex;" alt="{\displaystyle \partial h_{A}(u)}" loading="lazy"></span> denotes the set of <a href="Subgradient" class="mw-redirect" title="Subgradient">subgradients</a> of <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}}</annotation>
</semantics>
</math></span><img src="./70d9fb28189a429e3e9675911aa921326a217b1d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.671ex; width:2.804ex; height:2.509ex;" alt="{\displaystyle h_{A}}" loading="lazy"></span> at <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle u}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>u</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle u}</annotation>
</semantics>
</math></span><img src="./c3e6bb763d22c20916ed4f0bb6bd49d7470cffd8.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.33ex; height:1.676ex;" alt="{\displaystyle u}" loading="lazy"></span>.
</p><p>It follows directly from its definition that the support function is positive homogeneous:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}(\alpha x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n},}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>α<!-- α --></mi>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>α<!-- α --></mi>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mspace width="2em"></mspace>
<mi>α<!-- α --></mi>
<mo>≥<!-- ≥ --></mo>
<mn>0</mn>
<mo>,</mo>
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}(\alpha x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n},}</annotation>
</semantics>
</math></span><img src="./1fe23631b8500e6f66f84b6d54ddfe8e29fc5663.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:38.135ex; height:2.843ex;" alt="{\displaystyle h_{A}(\alpha x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n},}" loading="lazy"></span></dd></dl>
<p>and subadditive:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A}(x+y)\leq h_{A}(x)+h_{A}(y),\qquad x,y\in \mathbb {R} ^{n}.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo>+</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>≤<!-- ≤ --></mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>+</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>y</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mspace width="2em"></mspace>
<mi>x</mi>
<mo>,</mo>
<mi>y</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A}(x+y)\leq h_{A}(x)+h_{A}(y),\qquad x,y\in \mathbb {R} ^{n}.}</annotation>
</semantics>
</math></span><img src="./64ca88d2c79bccd5b5f5957a8126bde39a1315be.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:43.171ex; height:2.843ex;" alt="{\displaystyle h_{A}(x+y)\leq h_{A}(x)+h_{A}(y),\qquad x,y\in \mathbb {R} ^{n}.}" loading="lazy"></span></dd></dl>
<p>It follows that <i>h</i><sub><i>A</i></sub> is a <a href="Convex_function" title="Convex function">convex function</a>.
It is crucial in convex geometry that these properties characterize support functions:
Any positive homogeneous, convex, real valued function on <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c510b63578322050121fe966f2e5770bea43308d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.897ex; height:2.343ex;" alt="{\displaystyle \mathbb {R} ^{n}}" loading="lazy"></span> is the
support function of a nonempty compact convex set. Several proofs are known, <sup id="cite_ref-schneider_3-1" class="reference"><a href="#cite_note-schneider-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
one is using the fact that the <a href="Legendre_transformation" title="Legendre transformation">Legendre transform</a> of a positive homogeneous, convex, real valued function
is the (convex) indicator function of a compact convex set.
</p><p>Many authors restrict the support function to the Euclidean unit sphere
and consider it as a function on <i>S</i><sup><i>n</i>-1</sup>.
The homogeneity property shows that this restriction determines the
support function on <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./c510b63578322050121fe966f2e5770bea43308d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.897ex; height:2.343ex;" alt="{\displaystyle \mathbb {R} ^{n}}" loading="lazy"></span>, as defined above.
</p>
<div class="mw-heading mw-heading3"><h3 id="As_a_function_of_A">As a function of <i>A</i></h3></div>
<p>The support functions of a dilated or translated set are closely related to the original set <i>A</i>:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{\alpha A}(x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>α<!-- α --></mi>
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mi>α<!-- α --></mi>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mspace width="2em"></mspace>
<mi>α<!-- α --></mi>
<mo>≥<!-- ≥ --></mo>
<mn>0</mn>
<mo>,</mo>
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{\alpha A}(x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n}}</annotation>
</semantics>
</math></span><img src="./31b8071199ec83f1d36ec667292caf2e1ab7d8b6.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:37.052ex; height:2.843ex;" alt="{\displaystyle h_{\alpha A}(x)=\alpha h_{A}(x),\qquad \alpha \geq 0,x\in \mathbb {R} ^{n}}" loading="lazy"></span></dd></dl>
<p>and
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A+b}(x)=h_{A}(x)+x\cdot b,\qquad x,b\in \mathbb {R} ^{n}.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
<mo>+</mo>
<mi>b</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>+</mo>
<mi>x</mi>
<mo>⋅<!-- ⋅ --></mo>
<mi>b</mi>
<mo>,</mo>
<mspace width="2em"></mspace>
<mi>x</mi>
<mo>,</mo>
<mi>b</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A+b}(x)=h_{A}(x)+x\cdot b,\qquad x,b\in \mathbb {R} ^{n}.}</annotation>
</semantics>
</math></span><img src="./fee8e7dc9211749757c7a63ce9cb3705d6d70e74.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:39.239ex; height:2.843ex;" alt="{\displaystyle h_{A+b}(x)=h_{A}(x)+x\cdot b,\qquad x,b\in \mathbb {R} ^{n}.}" loading="lazy"></span></dd></dl>
<p>The latter generalises to
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle h_{A+B}(x)=h_{A}(x)+h_{B}(x),\qquad x\in \mathbb {R} ^{n},}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
<mo>+</mo>
<mi>B</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>+</mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>B</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>,</mo>
<mspace width="2em"></mspace>
<mi>x</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>,</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle h_{A+B}(x)=h_{A}(x)+h_{B}(x),\qquad x\in \mathbb {R} ^{n},}</annotation>
</semantics>
</math></span><img src="./385ad105926c8ba3de650e48ba7845de977e27ce.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:39.701ex; height:2.843ex;" alt="{\displaystyle h_{A+B}(x)=h_{A}(x)+h_{B}(x),\qquad x\in \mathbb {R} ^{n},}" loading="lazy"></span></dd></dl>
<p>where <i>A</i> + <i>B</i> denotes the <a href="Minkowski_sum" class="mw-redirect" title="Minkowski sum">Minkowski sum</a>:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A+B:=\{\,a+b\in \mathbb {R} ^{n}\mid a\in A,\ b\in B\,\}.}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
<mo>+</mo>
<mi>B</mi>
<mo>:=</mo>
<mo fence="false" stretchy="false">{</mo>
<mspace width="thinmathspace"></mspace>
<mi>a</mi>
<mo>+</mo>
<mi>b</mi>
<mo>∈<!-- ∈ --></mo>
<msup>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="double-struck">R</mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
<mo>∣<!-- ∣ --></mo>
<mi>a</mi>
<mo>∈<!-- ∈ --></mo>
<mi>A</mi>
<mo>,</mo>
<mtext> </mtext>
<mi>b</mi>
<mo>∈<!-- ∈ --></mo>
<mi>B</mi>
<mspace width="thinmathspace"></mspace>
<mo fence="false" stretchy="false">}</mo>
<mo>.</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A+B:=\{\,a+b\in \mathbb {R} ^{n}\mid a\in A,\ b\in B\,\}.}</annotation>
</semantics>
</math></span><img src="./84f32e007152eebe46c5e156fc1c683aa69eab22.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:39.611ex; height:2.843ex;" alt="{\displaystyle A+B:=\{\,a+b\in \mathbb {R} ^{n}\mid a\in A,\ b\in B\,\}.}" loading="lazy"></span></dd></dl>
<p>The <a href="Hausdorff_distance" title="Hausdorff distance">Hausdorff distance</a> <span class="nowrap"><i>d</i><sub> H</sub>(<i>A</i>, <i>B</i>)</span>
of two nonempty compact convex sets <i>A</i> and <i>B</i> can be expressed in terms of support functions,
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle d_{\mathrm {H} }(A,B)=\|h_{A}-h_{B}\|_{\infty }}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msub>
<mi>d</mi>
<mrow class="MJX-TeXAtom-ORD">
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="normal">H</mi>
</mrow>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>A</mi>
<mo>,</mo>
<mi>B</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>A</mi>
</mrow>
</msub>
<mo>−<!-- − --></mo>
<msub>
<mi>h</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>B</mi>
</mrow>
</msub>
<msub>
<mo fence="false" stretchy="false">‖<!-- ‖ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
</msub>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle d_{\mathrm {H} }(A,B)=\|h_{A}-h_{B}\|_{\infty }}</annotation>
</semantics>
</math></span><img src="./ddb6a8c400333c13f4dca465067054a79bb747dd.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:24.786ex; height:2.843ex;" alt="{\displaystyle d_{\mathrm {H} }(A,B)=\|h_{A}-h_{B}\|_{\infty }}" loading="lazy"></span></dd></dl>
<p>where, on the right hand side, the <a href="Uniform_norm" title="Uniform norm">uniform norm</a> on the unit sphere is used.
</p><p>The properties of the support function as a function of the set <i>A</i> are sometimes summarized in saying
that <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \tau }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>τ<!-- τ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \tau }</annotation>
</semantics>
</math></span><img src="./38a7dcde9730ef0853809fefc18d88771f95206c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.202ex; height:1.676ex;" alt="{\displaystyle \tau }" loading="lazy"></span>:<i>A</i> <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \mapsto }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo stretchy="false">↦<!-- ↦ --></mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \mapsto }</annotation>
</semantics>
</math></span><img src="./bc09de045e7d82eef9fe078e7e7606576640c11b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.324ex; height:1.843ex;" alt="{\displaystyle \mapsto }" loading="lazy"></span> <i>h</i> <sub><i>A</i></sub> maps the family of non-empty
compact convex sets to the cone of all real-valued continuous functions on the sphere whose positive
homogeneous extension is convex. Abusing terminology slightly, <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \tau }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>τ<!-- τ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \tau }</annotation>
</semantics>
</math></span><img src="./38a7dcde9730ef0853809fefc18d88771f95206c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.202ex; height:1.676ex;" alt="{\displaystyle \tau }" loading="lazy"></span>
is sometimes called <i>linear</i>, as it respects Minkowski addition, although it is not
defined on a linear space, but rather on an (abstract) convex cone of nonempty compact convex sets.
The mapping <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \tau }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>τ<!-- τ --></mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \tau }</annotation>
</semantics>
</math></span><img src="./38a7dcde9730ef0853809fefc18d88771f95206c.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.202ex; height:1.676ex;" alt="{\displaystyle \tau }" loading="lazy"></span> is an isometry between this cone, endowed with the Hausdorff metric, and
a subcone of the family of continuous functions on <i>S</i><sup><i>n</i>-1</sup> with the uniform norm.
</p>
<div class="mw-heading mw-heading2"><h2 id="Variants">Variants</h2></div>
<p>In contrast to the above, support functions are sometimes defined on the boundary of <i>A</i> rather than on
<i>S</i><sup><i>n</i>-1</sup>, under the assumption that there exists a unique exterior unit normal at each boundary point.
Convexity is not needed for the definition.
For an oriented <a href="Smooth_surface" class="mw-redirect" title="Smooth surface">regular surface</a>, <i>M</i>, with a <a href="Unit_normal_vector" class="mw-redirect" title="Unit normal vector">unit normal vector</a>, <i>N</i>, defined everywhere on its surface, the support function
is then defined by
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {x}\mapsto {x}\cdot N({x})}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mrow class="MJX-TeXAtom-ORD">
<mi>x</mi>
</mrow>
<mo stretchy="false">↦<!-- ↦ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<mi>x</mi>
</mrow>
<mo>⋅<!-- ⋅ --></mo>
<mi>N</mi>
<mo stretchy="false">(</mo>
<mrow class="MJX-TeXAtom-ORD">
<mi>x</mi>
</mrow>
<mo stretchy="false">)</mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle {x}\mapsto {x}\cdot N({x})}</annotation>
</semantics>
</math></span><img src="./c60f5d086d3238e6854eefd64cb462d9146c16e8.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:13.155ex; height:2.843ex;" alt="{\displaystyle {x}\mapsto {x}\cdot N({x})}" loading="lazy"></span>.</dd></dl>
<p>In other words, for any <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle {x}\in M}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mrow class="MJX-TeXAtom-ORD">
<mi>x</mi>
</mrow>
<mo>∈<!-- ∈ --></mo>
<mi>M</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle {x}\in M}</annotation>
</semantics>
</math></span><img src="./07bcd86a2f3ae100d03e530aba4a38d28cb37a16.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:6.613ex; height:2.176ex;" alt="{\displaystyle {x}\in M}" loading="lazy"></span>, this support function gives the
signed distance of the unique hyperplane that touches <i>M</i> in <i>x</i>.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Barrier_cone" title="Barrier cone">Barrier cone</a></li>
<li><a href="Supporting_functional" title="Supporting functional">Supporting functional</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-bonnesen-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-bonnesen_1-0">^</a></b></span> <span class="reference-text">T. Bonnesen, W. Fenchel, <i> Theorie der konvexen Körper,</i> Julius Springer, Berlin, 1934.
English translation: <i>Theory of convex bodies,</i> BCS Associates, Moscow, ID, 1987.</span>
</li>
<li id="cite_note-gardner-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-gardner_2-0">^</a></b></span> <span class="reference-text">R. J. Gardner, <i>Geometric tomography,</i> Cambridge University Press, New York, 1995. Second edition: 2006.</span>
</li>
<li id="cite_note-schneider-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-schneider_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-schneider_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">R. Schneider, <i>Convex bodies: the Brunn-Minkowski theory,</i> Cambridge University Press, Cambridge, 1993.</span>
</li>
</ol></div></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-05-28" href="https://en.wikipedia.org/wiki/?title=Support_function&oldid=1292664965">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>